package com.yunhe.inspect.model;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.yunhe.common.annotation.NameTitle;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * @ClassName DataInspectPlanDetailVo
 * @Description TODO
 * @Author HeTao
 * @Date 2021/11/10 11:07
 * @Version 1.0
 **/
@Data
@ApiModel("巡检计划详情")
public class DataInspectPlanDetailVo implements Serializable {
    private static final long serialVersionUID = -2484401841219472763L;
    @ApiModelProperty("id")
    private Integer id;

    @ApiModelProperty("巡检标题")
    private String inspectPlanTitle;

    @ApiModelProperty("创建时间")
    @DateTimeFormat(pattern = "yyyy-MM-dd" )
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date createTime;

    @ApiModelProperty("组织id")
    private Long orgId;

    @ApiModelProperty("组织名称")
    @NameTitle(nameType = "ORG",nameCode = "orgId")
    private String orgName;

    @ApiModelProperty("适用范围")
    private String scopeOfUse;

    @ApiModelProperty("适用范围")
    private List<String> scopeOfUseList;

    @ApiModelProperty("适用范围Title")
    @NameTitle(nameType = "RealStation-Office",nameCode = "scopeOfUse")
    private String scopeOfUseTitle;

    @ApiModelProperty("巡检类型")
    private String inspectType;

    @ApiModelProperty("巡检类型title")
    @NameTitle(nameType = "ITEM",nameCode = "inspectType")
    private String inspectTypeTitle;

    @ApiModelProperty("巡检周期")
    private String  inspectPlanCycle;

    @ApiModelProperty("巡检周期title")
    @NameTitle(nameType = "ITEM",nameCode = "inspectPlanCycle")
    private String inspectPlanCycleTitle;

    @ApiModelProperty("周期状态")
    private String inspectPlanCycleStatus;

    @ApiModelProperty("周期状态title")
    @NameTitle(nameType = "ITEM",nameCode = "inspectPlanCycleStatus")
    private String inspectPlanCycleStatusTitle;

    @ApiModelProperty("计划开始时间")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date inspectPlanStartTime;

    @ApiModelProperty("计划结束时间")
    @DateTimeFormat(pattern = "yyyy-MM-dd" )
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date inspectPlanEndTime;

    @ApiModelProperty("更新人")
    private Long updator;

    @ApiModelProperty("更新人名称")
    @NameTitle(nameType = "USER",nameCode = "updator")
    private String updatorName;

    @ApiModelProperty("状态")
    private String activity;

    @ApiModelProperty("创建人")
    private Long creator;

    @ApiModelProperty("创建人名称")
    @NameTitle(nameType = "USER",nameCode = "creator")
    private String creatorName;

    @ApiModelProperty("巡检计划所选的检查项目")
    private List<InspectPlanItem> inspectPlanItems;
}
